# Contributor: Alan Lacerda <alacerda@alpinelinux.org>
# Maintainer: Alan Lacerda <alacerda@alpinelinux.org>
pkgname=xrdp
pkgver=0.9.18.1
pkgrel=0
pkgdesc="Open source RDP server"
url="https://www.xrdp.org/"
arch="all"
license="Apache-2.0"
install="$pkgname.post-install"
depends="xinit bash"
makedepends="autoconf automake libtool openssl1.1-compat-dev libx11-dev
	libxfixes-dev libxrandr-dev libjpeg-turbo-dev fuse-dev linux-headers
	nasm linux-pam-dev"
subpackages="$pkgname-doc $pkgname-dev $pkgname-openrc"
source="https://github.com/neutrinolabs/xrdp/releases/download/v$pkgver/xrdp-$pkgver.tar.gz
	xrdp.initd
	dynamic-link.patch
	remove-werror.patch
	openssl.conf
	"

# secfixes:
#   0.9.18.1-r0:
#     - CVE-2022-23613
#   0.9.15-r1:
#     - CVE-2021-36158
#   0.9.13.1-r0:
#     - CVE-2020-4044

prepare() {
	default_prepare
	./bootstrap
}

build() {
	local _simd_opt=""
	if [ "$CARCH" = "x86" ]; then
		_simd_opt="--without-simd"
	fi
	./configure \
		--prefix=/usr \
		--disable-static \
		--sysconfdir=/etc \
		--localstatedir=/var \
		--sbindir=/usr/sbin \
		--enable-fuse \
		--enable-pam \
		--enable-tjpeg \
		$_simd_opt
	make
}

package() {
	make DESTDIR="$pkgdir" install

	install -Dm0644 "$srcdir"/openssl.conf -t "$pkgdir"/etc/xrdp

	install -m755 -D "$srcdir"/$pkgname.initd \
		"$pkgdir"/etc/init.d/$pkgname
	ln -s $pkgname $pkgdir/etc/init.d/$pkgname-sesman

	# Remove keys and its configuration generated during the
	# build process
	rm -f \
		"$pkgdir"/etc/xrdp/*.pem \
		"$pkgdir"/etc/xrdp/rsakeys.ini
}

sha512sums="
43bb20da35bbfa22d676f499da21f832804effd542cba9068afa554e5a85b26c4e37e5e32119efa34968a0d7a92504433cd5159c71cd0855e5ebdee619efc673  xrdp-0.9.18.1.tar.gz
22b44398f4014ee67831051d1a1a859c6f4a601d75a03b33142ce7ea1e3f00082134337efb7da69e964f4a369d2b22114973221be2131f384f9459cc8e82fc13  xrdp.initd
c20de35c4623bcdeae2ba8a740f965b5f320c506ff9a7b9444ec0c8300af518fd3a84b8c28f6e775b7bab73bdac7433be9261d133fc767d953ac54cb2d3b0afd  dynamic-link.patch
e22d17ad3d7116707bd4259592960175cf7586637228f8c37d92e60430ae38bf71d10667688e2d1db123709a074480b1f2e4e6f279c6ef421cc1c20688cde816  remove-werror.patch
c06de34e3f926d3d580a54a95a97c0fb3069c9fbade65b23bf424609aabb2a42db68eaeaa9540716b93b8d96bc3e75616612eedfa6cd55e736eee3b79c585d4f  openssl.conf
"
